home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1998 May / Macworld (1998-05).dmg / Shareware World / Info / Develop / AppleScript / CursorOSAX / Source Code / MoveMouse ƒ / MoveMouse.c
C/C++ Source or Header  |  1996-09-19  |  1KB  |  42 lines

  1. extern Boolean CrsrNew : 0x8CE;
  2. extern     Point mTemp : 0x828;
  3.  
  4.  
  5. pascal OSErr main(AEDescList *aevt, AEDescList *reply, long refCon) {
  6.     Point p;
  7.     OSErr err;
  8.     AEDesc        PointListDesc;
  9.     long        numItems = 0;
  10.     DescType    actualType;
  11.     long        actualSize;
  12.     AEKeyword    actualKeyword;
  13.     short*        hPoint;
  14.     short*        vPoint;
  15.     
  16.     PointListDesc.descriptorType = 'null';
  17.     //Extract the list elements
  18.     err = AEGetKeyDesc(aevt, keyDirectObject, typeAEList, &PointListDesc );
  19.     if (err) goto done;
  20.         
  21.     /* Count the list elements */
  22.     err = AECountItems( &PointListDesc, &numItems);
  23.     if (err) goto done;
  24.  
  25.     if (numItems == 2) {
  26.     //Make sure there were only two items
  27.             err = AEGetNthPtr( &PointListDesc, 1, 'shor', &actualKeyword,
  28.                     &actualType, (Ptr)&mTemp.h, sizeof(mTemp.h), &actualSize);
  29.         if (err) goto done;
  30.             err = AEGetNthPtr( &PointListDesc, 2, 'shor', &actualKeyword,
  31.                     &actualType, (Ptr)&mTemp.v, sizeof(mTemp.v), &actualSize);
  32.         if (err) goto done;
  33.         CrsrNew = true;
  34.     } else {
  35.         err = errAEEventNotHandled; //We didn't handle the event
  36.     }
  37.     
  38.     
  39.     done:
  40.     (void)AEDisposeDesc(&PointListDesc);
  41.     return err;     
  42. }